export default {
  namespaced: true,//设置独立的命名空间，避免命名冲突
  state: {
    id: 0,
    name: '',
    realName: '路先生',
    superAdmin: 0
  },
  /**
   * 对于模块内部的 mutation 和 getter，
   * 接收的第一个参数是模块的局部状态对象。
   * 对于模块内部的 getter，根节点状态会作为第三个参数暴露出来：
   */
  getters: {
    sumWithRootCount (state, getters, rootState) {
      return state.count + rootState.count
    }
  },
  /**
   * 对于模块内部的 mutation 和 getter，
   * 接收的第一个参数是模块的局部状态对象。
   */
  mutations: {
    /**你可以向 store.commit 传入额外的参数，即 mutation 的 载荷（payload） */
    changeId(state, payload) {
      state.id = state.id + payload.id
    }
  },
  /**
  * 同样，对于模块内部的 action，
  * 局部状态通过 context.state 暴露出来，
  * 根节点状态则为 context.rootState：
  */
 /**
  * 如果你希望使用全局 state 和 getter，rootState 和 rootGetters 会作为第三和第四参数传入 getter，也会通过 context 对象的属性传入 action。

若需要在全局命名空间内分发 action 或提交 mutation，将 { root: true } 作为第三参数传给 dispatch 或 commit 即可。
  */
  actions: {
    changeId({commit,state,rootState },payload){
      setTimeout(() => {
        commit('changeId',payload)
      }, 1000)
      
    }
  }
}
